O Instant Client é uma nova compactação de bibliotecas, ferramentas e arquivos de cabeçalho utilizáveis do Oracle Database para criar e executar aplicativos que se conectam a um Banco de Dados da Oracle remoto (ou local). O Instant Client pode ser usado para executar aplicativos OCI, OCCI, Pro*C, JDBC e ODBC e pode ser usado para executar drivers de linguagem de script, incluindo API s OCI8 do PHP, cx_Oracle do Python, node-oracledb do Node.js e ruby-oci8 do Ruby. Um pacote SDK fornece arquivos de cabeçalho para compilar programas C e C++ que usam as APIs OCI e OCCI. Alguns utilitários como SQL*Plus, Workload Replay Client, Data Pump e SQL*Loader também estão disponíveis nos pacotes do Instant Client. Os pacotes disponíveis do Instant Client estão descritos na página inicial do Instant Client.
As vantagens do Instant Client são: a instalação é uma descompactação rápida de um pacote ZIP ou a instalação comum dos pacotes RPM do Linux. O tamanho do Instant Client é muitíssimo menor que o Oracle Client completo. Outras vantagens são que ele está disponível sob uma licença OTN que permite redistribuição. Seus aplicativos baseados no Instant Client podem aproveitar ao máximo os recursos do Oracle Client, como cache e pool de conexões; eles podem tirar proveito dos recursos Oracle Net, como criptografia de rede e, é claro, podem usar os recursos grandes e pequenos do Oracle Database.
Um aplicativo baseado no Instant Client pode interoperar com qualquer versão de banco de dados com a qual o Oracle Client interopera. Por exemplo, o Instant Client 12.2 permite a conexão com os bancos de dados 11.2, 12.1 e 12.2. Os detalhes estão na matriz de interoperabilidade em ID do Documento de Suporte 207303.1 Observe que o Instant Client inclui várias ferramentas e tecnologias Oracle diferentes, algumas das quais podem ter requisitos mais restritivos.
Você pode instalar pacotes do Instant Client a partir do OTN. Os usuários do Oracle Linux podem instalá-lo no ULN. Também é uma opção de instalação ao instalar o Oracle Client completo. O Instant Client é disponibilizado em paralelo com cada versão do Oracle Database. Várias plataformas, incluindo Apple macOS, também possuem pacotes do Instant Client, mas não possuem um Banco de Dados ou o Client completo.
O Instant Client é gratuito no OTN para qualquer pessoa usar em um ambiente de desenvolvimento ou produção. No entanto, os clientes podem ligar para o Oracle Support se já tiverem um contrato de suporte padrão.
Sujeito à licença, o Instant Client pode ser agrupado e redistribuído gratuitamente. As empresas podem redistribuir o Instant Client em suas organizações. No entanto, os clientes podem ligar para o Oracle Support do Instant Client se tiverem um contrato de suporte padrão.
Todos os métodos de nomeação do Oracle Net que não exigem o uso de ORACLE_HOME (para localizar arquivos de configuração como tnsnames.ora ou sqlnet.ora) funcionam no modo Instant Client.
Para aplicativos baseados em C e C++, a cadeia de conexão pode ser especificada nos seguintes formatos:
Uma cadeia de Conexão Fácil do formulário:
[//]host_name[:port][/service_name][:server_type][/instance_name]
such as: localhost/pdborcl
Como um par de palavra-chave-valor do Oracle Net. Por exemplo:
"(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp) (HOST=dlsun242)
(PORT=5521))
(CONNECT_DATA=(SERVICE_NAME=bjava21)))"
Os métodos de nomeação que requerem TNS_ADMIN para localizar arquivos de configuração continuam funcionando se a variável do ambiente TNS_ADMIN está configurada.
Se a variável de ambiente TNS_ADMIN não estiver configurada e forem usadas entradas TNSNAMES como inst1 e assim por diante, a variável ORACLE_HOME deverá ser configurada e os arquivos de configuração deverão estar no diretório $ORACLE_HOME/network/admin.
Observe que a variável ORACLE_HOME nesse caso é usada apenas para localizar arquivos de configuração do Oracle Net e nenhum outro componente do Client Code Library (OCI, NLS e assim por diante) usa o valor ORACLE_HOME.
O adaptador de legado ou as cadeias de conexão vazias não são compatíveis. No entanto, uma maneira alternativa de usar a cadeia de conexão vazia é definir a variável de ambiente TWO_TASK no UNIX, ou a variável LOCAL no Windows, como uma entrada tnsnames.ora ou um par de palavra-chave-valor do Oracle Net. Se TWO_TASK ou LOCAL estiver definido como uma entrada tnsnames.ora, o arquivo tnsnames.ora poderá ser carregado pela configuração TNS_ADMIN ou ORACLE_HOME.
Não, o Instant Client não funciona com o Oracle Names. Embora o Instant Client seja compatível com bancos de dados antigos, ele agora não fornece suporte aos recursos obsoletos, incluindo o Oracle Names. Consulte a Observação do Metalink.
Enquanto o caminho de carregamento da biblioteca tiver o diretório que contém os arquivos do Instant Client (por exemplo, o diretório instantclient) antes do diretório da biblioteca em ORACLE_HOME, o aplicativo funcionará no modo Instant Client e as bibliotecas no ORACLE_HOME não serão usadas.
As variáveis de ambiente ORA_NLS33, ORA_NLS32 e ORA_NLS são ignoradas no modo Instant Client. A variável de ambiente ORA_TZFILE deve ser definida como o nome do arquivo grande de fuso horário, em vez de seu caminho completo. Todas as outras variáveis de ambiente (como NLS_LANG) não têm alteração no comportamento.
No momento, alguns aplicativos Oracle estão certificando operações no Instant Client. Após a conclusão da certificação, a mensagem desaparecerá.
As bibliotecas do Instant Client ocupam um espaço de endereço virtual igual ao tamanho dos arquivos. No entanto, apenas as mensagens de erro frequentemente usadas das bibliotecas ocupam memória física. Na maioria dos casos, a carga da memória física é de alguns kilobytes, apesar do maior espaço de endereço virtual reservado.
Configurações especiais para aplicativos habilitados para Instant Client podem ser definidas no registro para todos os usuários ou por usuário.
Se você já tem o Oracle Client instalado em sua máquina, recomendamos:
Os arquivos como "tnsnames.ora", "sqlnet.ora" e "oraaccess.xml" serão localizados pelo Instant Client, definindo a variável de ambiente TNS_ADMIN ou a entrada de registro no diretório que contém os arquivos. Use o caminho completo do diretório; não inclua um nome de arquivo. Como alternativa, crie um subdiretório "network/admin" no diretório Instant Client para os arquivos Oracle Net. Este é o local padrão e, portanto, nenhuma variável TNS_ADMIN é necessária.
Sim, o LDAP pode ser usado com o Instant Client, a partir de 10.1.0.4.
Sim, o Pro*C é compatível para execução com o Instant Client 10.2.0.x nas plataformas Unix. No momento, o Pro*C não é compatível com o Instant Client no Windows.